package cn.school.student.service;

import cn.school.student.entity.StudentInfo;
import cn.school.student.vo.ExamInfoVO;
import cn.school.student.vo.ExamResultInfoVO;
import com.baomidou.mybatisplus.core.metadata.IPage;

import java.util.List;

public interface ExamResultInfoService {

    /**
     * 分页查询考试成绩
     * @param vo
     * @return
     */
    IPage<ExamResultInfoVO> findExamResultPageList(ExamResultInfoVO vo);

    /**
     * 新增or修改考试成绩
     * @param vo
     * @return
     */
    int addOrUpdateExamResult(ExamResultInfoVO vo);

    /**
     * 删除单挑成绩
     * @param vo
     * @return
     */
    int deleteResultById(ExamResultInfoVO vo);

    /**
     * 批量删除成绩
     * @param list
     * @return
     */
    int deleteBatchExamResult(List<ExamResultInfoVO> list);

    /**
     * 批量新增成绩
     * @param list
     * @return
     */
    int addBatchExamResult(List<ExamResultInfoVO> list);

    /**
     * 查询考试信息
     * @param vo
     * @return
     */
    List<ExamInfoVO> queryExamByName(ExamInfoVO vo);

    /**
     * 查询班级学生信息
     * @param vo
     * @return
     */
    List<StudentInfo> queryClassStudents(ExamInfoVO vo);

    /**
     * 查询考试结果
     * @param examId
     * @return
     */
    List<ExamResultInfoVO> queryExamResultList(String examId);

    void addExamResult(ExamResultInfoVO examResultInfoVO);
}
